"""
    1. 创建视频写入的对象
        out = cv.VideoWriter(filename, fourcc, fps, frameSize)
            参数：filename：视频保存位置，fourcc：指定视频编解码器的4字节代码，fps：帧率，frameSize：帧大小
    2. 设置视频的编解码器
        retval = cv.VideoWriter_fourcc(c1, c2, c3, c4)
            参数：c1,c2,c3,c4：是视频编解码器的4字节代码，在fourcc.org中找到可用代码列表，与平台紧密相关常用的有:
                在 Windows 中：DIVX（.avi）
                在 OS 中：MJPG（mp4），DIVX （.avi），x264（.mkv）
"""
import numpy as np
import cv2 as cv

# 1. 获取视频对象
cap = cv.VideoCapture("video/DOG.wmv")

# 2. 获取图像的属性（宽和高），并将其转换为整数
frame_width = int(cap.get(3))
frame_height = int(cap.get(4))

# 3. 创建保存视频的对象，设置编码格式，帧率，图像的宽高等
out = cv.VideoWriter("video/outpy.avi", cv.VideoWriter_fourcc("M", "J", "P", "G"), 10, (frame_width, frame_height))
while(True):
    # 4. 获取视频中的每一帧图像
    ret, frame = cap.read()
    if ret == True:
        # 5. 将每一帧图像写入到输出文件中
        out.write(frame)
    else:
        break

# 6. 释放视频对象
cap.release()
cv.destroyAllWindows()





